import Vue from 'vue';
import Vuex from 'vuex';
import createPersistedState from "vuex-persistedstate";
Vue.use(Vuex);
// 登录验证
export default new Vuex.Store({
    // modules: {
    //     routers: routers,
    // },
    state: {
        userName:"", // 用户名称
        user: false, // 用户
        notify: false, // 消息通知
        logen: "", // 用户唯一标识
        baseUrl: "http://cmsapi.lyqswl.com/admin.php/", // 运行的环境地址
        routers: "",
    },
    mutations: {
        // 用户名称
        serUserName(state, userName) {
            state.userName = userName;
        },
        // 登录
        login(state, user) {
            state.user = user;
            localStorage.setItem("userInfo", user);
        },
        // 退出
        logout(state, user) {
            state.user = "";
            localStorage.setItem("userInfo", "");
        },
        // 消息通知
        stateNotify(state) {
            state.notify = false;
        },
        // 配置环境地址
        setUrl(state, url) {
            state.baseUrl = "";
            localStorage.setItem("baseUrl", url);
        },
        routers(state, newsdata) {
            state.routers = newsdata
        },
    },
    actions: {
        routers(context) {
            context.commit('routers')
        },
    },
    getters: {
        routers(state) {
            console.log("getters", state)
            return state.routers
        },
    },
    // 数据持久化
    plugins: [createPersistedState({
        //key是存储数据的键名
        key: 'routersData',
        //paths是存储state中的那些数据，如果是模块下具体的数据需要加上模块名称，如user.token  
        paths: ["routers.routers","userName"]
    })]
})